{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "X=np.empty((100,2))\n",
    "X[:,0]=np.random.uniform(0.,100.,size=100)\n",
    "X[:,1]=0.75*X[:,0]+3.+np.random.normal(0.,5.,size=100)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAh8AAAGdCAYAAACyzRGfAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8o6BhiAAAACXBIWXMAAA9hAAAPYQGoP6dpAAA+GklEQVR4nO3de3RU9bn/8c8ESEAgExMkk9REU6QC4hUUIhx7iqHCUapHbKsHW1pdeoxIBWwF2qKlXuJlrXqrxVOPB9ofAkfWzxva0qXR0mLDRRCPKS0iUuFAJlRoZrg0gWb274/8ZsyEuew9lz17T96vtWYtZ2bPnu/s1bKffJ/n+3w9hmEYAgAAsElBrgcAAAB6F4IPAABgK4IPAABgK4IPAABgK4IPAABgK4IPAABgK4IPAABgK4IPAABgq765HkBPoVBI+/fv1+DBg+XxeHI9HAAAYIJhGDp8+LAqKytVUJB4bsNxwcf+/ftVVVWV62EAAIAU7N27V6effnrCYxwXfAwePFhS1+CLi4tzPBoAAGBGMBhUVVVV5D6eiOOCj3Cqpbi4mOADAACXMVMyQcEpAACwFcEHAACwFcEHAACwFcEHAACwFcEHAACwFcEHAACwFcEHAACwFcEHAACwleOajAEAAOs6Q4Y27T6kA4fbNXRwf11SU6o+Bc7cI43gAwAAl1vb3KLFa7arJdAeea3C21/3ThulKaMrcjiy2Ei7AADgYmubW1S/fGtU4CFJ/kC76pdv1drmlhyNLD6CDwAAXKozZGjxmu0yYrwXfm3xmu3qDMU6IncIPgAAcKlNuw+dNOPRnSGpJdCuTbsP2TcoEwg+AABwqQOH4wceqRxnF0vBR2dnpxYtWqSamhoNGDBAw4YN03333SfD+Gw6xzAM3XPPPaqoqNCAAQNUV1ennTt3ZnzgAAD0dkMH98/ocXaxFHw8/PDDWrJkiX7605/qT3/6kx5++GE98sgjeuqppyLHPPLII3ryySf1zDPPaOPGjRo4cKCuuOIKtbc7K+oCAMDtLqkpVYW3v+ItqPWoa9XLJTWldg4rKUvBxx/+8AddffXVuvLKK3XmmWfquuuu05e//GVt2rRJUtesx+OPP64f/vCHuvrqq3Xeeefpl7/8pfbv36+XX345G+MHAKDX6lPg0b3TRknSSQFI+Pm900Y5rt+HpeDj0ksvVWNjoz788ENJ0vvvv6/169dr6tSpkqTdu3fL7/errq4u8hmv16tx48apqakp5jk7OjoUDAajHgAAwJwpoyu05MaL5PNGp1Z83v5acuNFjuzzYanJ2IIFCxQMBjVixAj16dNHnZ2deuCBBzRjxgxJkt/vlySVl5dHfa68vDzyXk8NDQ1avHhxKmMHAADqCkAmj/LlZ4fTF154Qc8//7xWrFihc845R9u2bdOcOXNUWVmpmTNnpjSAhQsXat68eZHnwWBQVVVVKZ0LAIDeqk+BR7XDynI9DFMsBR/f+973tGDBAl1//fWSpHPPPVeffPKJGhoaNHPmTPl8PklSa2urKio+m+ZpbW3VBRdcEPOcRUVFKioqSnH4AADAbSzVfBw7dkwFBdEf6dOnj0KhkCSppqZGPp9PjY2NkfeDwaA2btyo2traDAwXAAC4naWZj2nTpumBBx5QdXW1zjnnHL333nv6yU9+optuukmS5PF4NGfOHN1///0aPny4ampqtGjRIlVWVuqaa67JxvgBAOg13LRzbSKWgo+nnnpKixYt0u23364DBw6osrJS//7v/6577rkncszdd9+to0eP6tZbb1VbW5smTpyotWvXqn9/ZzU4AQDATdy2c20iHqN7e1IHCAaD8nq9CgQCKi4uzvVwAADIGrMzGeGda3vesMNHOmFJrZX7t6WZDwAAkBlmZzKS7VzrUdfOtZNH+VyTgmFjOQAAbBaeyei5I60/0K765Vu1trkl8ppbd65NhOADAAAbJZvJkLpmMjpDXc/cunNtIgQfAADYyOpMxpCB5nphmT3OCQg+AACwkeWZDLNlHO4o95BE8AEAgK2GDjbXeiJ83KdHOkwdb/Y4JyD4AADARpfUlKrCmzgAqfB2LbuVpL98etTUec0GNU5A8AEAgI36FHj0lfMT9+T4yvkV6lPg0drmFj325s6Ex3oUHay4AcEHAAA26gwZevX9loTHvPp+i47/I6TFa7abOue900a5pseHRPABAICtkq12kbpWu/yfpr8kPU6S5tR9IefdTa0i+AAAwEZmV7t8cuiYqeOqy05JZzg5QfABAICNzBaGnlFqLqi477U/RnVEdQOCDwAAbBRe7RKvQiNcQPqN2jMTHhd26OiJk1qyOx3BBwAANupT4NG900ZJOrkvWPj5vdNGqbBvQdzjYunekt3pCD4AALDZlNEVWnLjRfL16Pfh8/bXkhsvihSQho87dWBhwvO5bXO5vrkeAAAAvdGU0RWaPMqnTbsP6cDhdg0d3NWro+eS2SmjK/T3452a+8L7Sc/pls3lCD4AAMiRPgUe1Q4rS3qczzvA1Pnc0uWU4AMAgCzpDBlJZzbMCBep+gPtilXV4VFXysYtXU4JPgAAyIK1zS1avGZ7VKOwCm9/3TttlOWmYOEi1frlW+WRogKQ7kWqbulySsEpAAAZtra5RfXLt57UodQfaE95WazZIlU3YOYDAIAM6gwZWrxme8z0iKGumYrFa7Zr8iif5ZkKs0WqTkfwAQDoNTJVg5FIsr1bui+LNVNs2pPZIlUnI/gAAPQKmazBSMTscle3LIvNBmo+AAB5Lxs1GPGYXe7qlmWx2UDwAQDIa8lqMKTMtiY3u3eLW5bFZgPBBwAgr1mpwcgEs3u3uK1INJMIPgAAeS3dGozOkKGmXQf1yrZ9atp10NQMST4ti80GCk4BAHktnRqMdIpU82VZbDYQfAAA8lqqrcnDRao9PxMuUjUzg+G0ZbF2LDU2g+ADAJDXUmlNns1GYbli11JjM6j5AADkPas1GHYXqWabnUuNzbAUfJx55pnyeDwnPWbNmiVJam9v16xZs1RWVqZBgwZp+vTpam1tzcrAAQCwYsroCq2fP0krbxmvJ66/QCtvGa/18yfF/Ks/nxqF2b3U2AxLaZfNmzers7Mz8ry5uVmTJ0/WV7/6VUnS3Llz9frrr2v16tXyer264447dO211+qdd97J7KgBAEiB2RqMXDQKy1Y9RrbbvafCUvBx2mmnRT1/6KGHNGzYMH3xi19UIBDQc889pxUrVmjSpEmSpKVLl2rkyJHasGGDxo8fn7lRAwDw/2Xjpp1qkWqqslmP4cRZnJQLTo8fP67ly5dr3rx58ng82rJli06cOKG6urrIMSNGjFB1dbWampriBh8dHR3q6OiIPA8Gg6kOCQDQy2Trpp1KkWqqMrGqJhEntntPueD05ZdfVltbm771rW9Jkvx+vwoLC1VSUhJ1XHl5ufx+f9zzNDQ0yOv1Rh5VVVWpDgkA0Itku4jSjkZhdtRjOLHde8ozH88995ymTp2qysrKtAawcOFCzZs3L/I8GAwSgAAAErJrKWy2G4XZUY9h5yyOWSkFH5988onefPNNvfjii5HXfD6fjh8/rra2tqjZj9bWVvl8vrjnKioqUlFRUSrDAAD0UnYWUWazUZhd9RjhWZyeKSpfjvp8pBR8LF26VEOHDtWVV14ZeW3MmDHq16+fGhsbNX36dEnSjh07tGfPHtXW1mZmtACAXiFZEakTiyhTYWc9hpPavVsOPkKhkJYuXaqZM2eqb9/PPu71enXzzTdr3rx5Ki0tVXFxsWbPnq3a2lpWugAATDNTROrEIspU2L2qxint3i0XnL755pvas2ePbrrpppPee+yxx3TVVVdp+vTpuuyyy+Tz+aJSMwAAJGK2iNSJRZSpCNdjSDrpt+SqHsMOHsMw7GtpZkIwGJTX61UgEFBxcXGuhwMAsElnyNDEh9+KW8sRngVYP3+S+hR4IoGKFLuI0k1b1ztp35VUWbl/s7EcAMARrBaROq2IMh1OqsewA8EHAMARUikizaebtlPqMexA8AEAcIRUi0h70007X6Tc4RQAgEzKlyJSJEfwAQBwhN668qM3IvgAADiGHfupIPeo+QAAOErPItIhg4okQ/r0aIeadh10bUEpPkPwAQBwnHAR6drmFn139fuu7n+Bk5F2AQA4ktlup8l0hgw17TqoV7btU9OugylvT5+p84CZDwBAFiXbIC7R5xav2R5zvxNDXQWoi9ds1+RRvoTny1Tn0HzoQOokBB8AgKxI54ZttdtpvO+vX771pAAmPHNitoA1U+fBZ0i7AAAyonta4ok3P9RtaaRMUul22nMsiWZOpK6Zk2Spk0ydB9GY+QAApC3WLEcsZlMmqXY7DcvEzEkmz4NozHwAANISrzA0nu437HjS7Xaa7sxJps+DaAQfAICUJUpLJJPohp1ut9N0Z04yfR5EI/gAAKQsWVoikWQ37HS6nWZqnxj2m8kOaj4AAClLJd3gUVcAYeaG3bPbqdnluuGZk/rlW+WRomZmrOwTk6nzIBozHwCAlFlNN6Ryww53O736gs+pdliZ6c9lap8Y9pvJPI9hGI5aHxQMBuX1ehUIBFRcXJzr4QAAEugMGZr48FvyB9pN1X3kojFXqo3OsnWefGXl/k3aBQB6gXRvnPE+byYtMafuCzpzyCk5u2GHZ06cch4QfABA3ku3NXiyz4fTEj2P8dF+HHGQdgGAPBavNXh47qFnzULPGY6/HT2uWSvMfd6paQmnjivfkHYBAFjenC3WDEeBR6Y/78S0BBvCOROrXQAgT1lpDR6vS2miLUvMdCrNpXi/yez+Msgegg8AyFNme3D4g+0pdym18j12YkM4ZyP4AIA8ZbYHx6EjHSl3KbXyPXayMusD+xF8AECeMtsavHRgYUrnd3JrcTaEczaCDwDIU2Y3Z/N5B1g+t9Nbi7MhnLMRfABAHjPTGjzZDInUteol3ue76wwZatp1UK9s26emXQdzVlPBhnDORp8PAOgFkvW6CK8MkWJ3KX363y7UqQOLEvbKcNqy1mS/iX1ZMsvK/ZvgAwAgKb3gwWozM7s4LSDKZ1kNPvbt26f58+fr17/+tY4dO6azzjpLS5cu1dixYyVJhmHo3nvv1bPPPqu2tjZNmDBBS5Ys0fDhwzM+eABAZqXSDTS8uVy81SUedaVp1s+flJP6EDqc2iNrHU7/9re/acKECfrSl76kX//61zrttNO0c+dOnXrqqZFjHnnkET355JP6xS9+oZqaGi1atEhXXHGFtm/frv79KewB0Ls5/UaYSpdSs8taH3vjQ004a4jtv9mJnVd7O0szHwsWLNA777yj3//+9zHfNwxDlZWVuuuuu/Td735XkhQIBFReXq5ly5bp+uuvT/odzHwAyFf5mgJ4Zds+3blqm+nj8+E342RW7t+WVru8+uqrGjt2rL761a9q6NChuvDCC/Xss89G3t+9e7f8fr/q6uoir3m9Xo0bN05NTU0xz9nR0aFgMBj1AIB8k8+tvocMKrJ0fCZ/s1NW18AaS2mXjz/+WEuWLNG8efP0/e9/X5s3b9Z3vvMdFRYWaubMmfL7/ZKk8vLyqM+Vl5dH3uupoaFBixcvTnH4AOB8Vjd4y+Y4spLysXi/z9RvzteZpN7AUvARCoU0duxYPfjgg5KkCy+8UM3NzXrmmWc0c+bMlAawcOFCzZs3L/I8GAyqqqoqpXMBgBNZafWdrdqEbN6oPz3aYfkz6f7meKtrwrMqLKN1Nktpl4qKCo0aNSrqtZEjR2rPnj2SJJ/PJ0lqbW2NOqa1tTXyXk9FRUUqLi6OegBAPsl1q+9sp3zS6RKaym9m0zj3sxR8TJgwQTt27Ih67cMPP9QZZ5whSaqpqZHP51NjY2Pk/WAwqI0bN6q2tjYDwwUA97Gz1XfPGojj/whl9UbdGTIUMgyVDOiX0udT+c1sGud+ltIuc+fO1aWXXqoHH3xQX/va17Rp0yb9/Oc/189//nNJksfj0Zw5c3T//fdr+PDhkaW2lZWVuuaaa7IxfgBwvHCrb3+gPWYQEO6DkW6r71ipldKBhTp09Hjcz6ST/oj1fWal85tzPZOE9FkKPi6++GK99NJLWrhwoX784x+rpqZGjz/+uGbMmBE55u6779bRo0d16623qq2tTRMnTtTatWvp8QGg1wpv8Fa/fKs8it3qO90N2uLVQCQKPLqzeqOO931mpPub2TTO/WivDgA2yVbRZ7IOo2asvGW86ZkPM99Xcko/PX3DRQr8/YTuez2zvzn8/clmknLVUbW3ylqHUwBA6qaMrtDkUb6ML3dNVgORSCrpDzPf13bshAoKPPqX8yp0xejM/mY7ZpKQXQQfAGCjbLT6TrW2IdUbtdWai2z85imjK7TkxotOmkny0efDFQg+AMDlzNY2lA7sp0NHT0Sep3qjdkrNRbZmkpB9BB8A4HJmV9Os+96XtOWTv6V9o7Zr9Y4ZbBrnTpb6fAAAnCdcAyF9lkoJ655aKexboNphZbr6gs+pdlhZyjMEZr+PGQjEQ/ABAHkgXAPh80anOnze/llpNW739yG/sNQWAPJI1jaPc8j3wblYagsAvZTdNRDUXCAVBB8AEAd/1QPZQfABADFkcwt6oLej4BQAesj2FvRAb0fwAQDddIaMrG5BD4DgAwCiJNu3pPsW9ABSQ80HAHRjdd8S2Isi4PxA8AEA3Thl3xKcjCLg/EHaBQC6Ce9bEu9vaY+6bnh27FuCz1AEnF8IPgCgG/YtcR6KgPMPwQcA9GD3viWdIUNNuw7qlW371LTroK030Vx+t1kUAecfaj4AIIYpoys0eZQv68WNuaxjcEsNBUXA+YeZDwCII7xvSbpb0MeTyzoGN9VQUAScfwg+ACAHktUxGJIW/N8P9M5Hn2Y8FeK2GgqKgPMPwQcA5ECyOgZJavv7Cc34z42a+PBbGZ2JcFsNBUXA+YfgAwBywEp9QqZTIW6sobC7CBjZRcEpAOSAlfoEQ11/4S9es12TR/nS/gvfrTUUdhUBI/sIPgAgB8J1DP5Ae8zai566p0Jqh5Vl9bs96ppRcGINRbgIGO5G2gVAXnBDv4ruEtUxJJKJVAg1FMg1Zj4AuJ5b+lX0FK5j6Dn2RDKVCon33T4XXDe4n8cwDEf9eRAMBuX1ehUIBFRcXJzr4QBwuHC/ip7/kIX/ZndDMWJnyNCGXQd1+/NbFGj/R8xjwqmQ9fMnZXRGgl1ikSlW7t/MfABwrWT9KmIVaTrxZtunwKPDHSfkiTOObKZCEtVQOPFaIT8QfABwLSv9KmqHlTk2PRNv9ibMe0o/PXTtubaO0anXCvmBglMArmWlX4VT24knmr0JG9CvjyaP8tk2JqdeK+QPS8HHj370I3k8nqjHiBEjIu+3t7dr1qxZKisr06BBgzR9+nS1trZmfNAAIJkvvhwysMix7cTNdDq1s9vo8X+E9P2XPnDktUL+sDzzcc4556ilpSXyWL9+feS9uXPnas2aNVq9erXWrVun/fv369prr83ogAEgzOyeH/LIse3EndRtdG1zi8Y3NOrQ0RNxj3Fa63W4k+Waj759+8rnO3n6LxAI6LnnntOKFSs0adIkSdLSpUs1cuRIbdiwQePHj09/tADQTbhfRf3yrfJIUX+tdy/S/PRIh6nz5aKduFO6jSarO+nJSa3X4T6WZz527typyspKff7zn9eMGTO0Z88eSdKWLVt04sQJ1dXVRY4dMWKEqqur1dTUlLkRA0A3Zvb8cMoNPhYn7Nhqpu6kJ6e1Xoe7WJr5GDdunJYtW6azzz5bLS0tWrx4sf7pn/5Jzc3N8vv9KiwsVElJSdRnysvL5ff7456zo6NDHR2f/VUSDAat/QIAvV6yPT+c3E7c7OxNNpe4mqk76T4mp7Zeh3tYCj6mTp0a+e/zzjtP48aN0xlnnKEXXnhBAwYMSGkADQ0NWrx4cUqfBYCwRP0qnHCDTyTX3UatplBovY50pdXno6SkRF/4whf00UcfafLkyTp+/Lja2tqiZj9aW1tj1oiELVy4UPPmzYs8DwaDqqqqSmdYAHCSTN/gM92AK5c7tppNoZQO7KcH/9XefiPIT2kFH0eOHNGuXbv0jW98Q2PGjFG/fv3U2Nio6dOnS5J27NihPXv2qLa2Nu45ioqKVFRUlM4wAMCUTN3gs9WAK1c7tprZYbdsYKGaFl6uwr60h0L6LO3t8t3vflfTpk3TGWecof379+vee+/Vtm3btH37dp122mmqr6/Xr371Ky1btkzFxcWaPXu2JOkPf/iD6QGxtwsAJ8uHvWRiCf8uKXZayq2/C/axcv+2FML+7//+r2644QadffbZ+trXvqaysjJt2LBBp512miTpscce01VXXaXp06frsssuk8/n04svvpj6LwEAB0m2l4zk3gZcZlYNAZnCrrYAYFLTroO64dkNSY9becv4nKRPMoHN5JAqdrUFgCxwUjfSbMlV3Ql6FyqHAMAkJzcrA9yE4AMATHJCN1IgHxB8AIBJ4WZlkk4KQJzQrAxwC4IPALCAVSFA+ig4BQCLstmNlNUm6A0IPgAgBdlYFZKtzqmA05B2AQAHCHcY7bm7rD/QrvrlW7W2uSVHIwMyj+ADAHIsnzunArEQfABAjm3afeikGY/uDEktgXZt2n3IvkEBWUTNB4C0USSZnt7QORXojuADQFookkwfnVPR25B2AZAyiiQzg86p6G0IPgCkxGyR5Ds7P9Ur2/apaddBCibjSNQ5Veq6nnRORT4h7QIgJWaLJGc8tzHymlvSMbmoYQl3Tl3w4gdqO3Yi6r2SU/pl9bsBuxF8AEhJKsWP4XSMk9uQ57qGJdAj8Ai/5vTrBlhB2gVASlIpfnR6z4pc1rDQ6wO9CcEHgJQkK5KMx6k9K3Jdw0KvD/QmpF0ApCRcJFm/fKs8UsybdiJO61mR6xoWen2gN2HmA0DK4m0vb4bTelakU8OSiXQMvT7QmzDzASAtPbeXHzKoSHe9sE2twY6YsyEeST4H9qxItYbFo650zORRvrRWxITTWP5Au6uuG5AKZj4ApC28vfzVF3xOE84aoh995RxJJ/esCD93Ys+KXNewJOr14eTrBqSC4ANAxsVLx5QOLNS3J5wp74BCx63aSNboK5lM1GLEu24+b3+W2SKveAzDcNS/AMFgUF6vV4FAQMXFxbkeDoA0hJt1vbndr5e27dOho5/1sHBqw7FYfT7MWHnLeNUOK8vIGNioD25k5f5N8AEgq8K9M3r+QxO+lTrxL/ruN3+zNSzr508iQECvZuX+TdoFQNa4tXFWPtSwAE5G8AEga/KlcRa1GEBmsdQWQNbkU+OsnkuKqcUAUkfwASBr8q1xVjgdAyA9pF0AZE2y3hkeda16oXEW0LsQfADIGhpnAYiF4ANAVlGsCaCntIKPhx56SB6PR3PmzIm81t7erlmzZqmsrEyDBg3S9OnT1dramu44AbjYlNEVWj9/klbeMl5PXH+BVt4yXuvnTyLwAHqplAtON2/erP/4j//QeeedF/X63Llz9frrr2v16tXyer264447dO211+qdd95Je7AA3MspxZp0DwVyL6Xg48iRI5oxY4aeffZZ3X///ZHXA4GAnnvuOa1YsUKTJk2SJC1dulQjR47Uhg0bNH78+MyMGkCvk4mgIVbrdKe2eQfyWUrBx6xZs3TllVeqrq4uKvjYsmWLTpw4obq6ushrI0aMUHV1tZqammIGHx0dHero6Ig8DwaDqQwJQB7LRNAQr827P9Cu+uVbqT8BbGS55mPVqlXaunWrGhoaTnrP7/ersLBQJSUlUa+Xl5fL7/fHPF9DQ4O8Xm/kUVVVZXVIAPJYOGjo2Sm1JdCu25Zv1RNv7kzant2tbd6BfGUp+Ni7d6/uvPNOPf/88+rfPzNNgRYuXKhAIBB57N27NyPnBeB+iYKGsMfe/FATHmrU2uaWuMfkS5t3IF9YCj62bNmiAwcO6KKLLlLfvn3Vt29frVu3Tk8++aT69u2r8vJyHT9+XG1tbVGfa21tlc/ni3nOoqIiFRcXRz0AQEoeNIT5gx2qX741bgCST23egXxgKfi4/PLL9cEHH2jbtm2Rx9ixYzVjxozIf/fr10+NjY2Rz+zYsUN79uxRbW1txgcPIL9ZDQbipU7yrc074HaWCk4HDx6s0aNHR702cOBAlZWVRV6/+eabNW/ePJWWlqq4uFizZ89WbW0tK10AWGYlGOieOum5pDfc5t0faI+ZwvGoq+kZbd4Be2S8w+ljjz2mq666StOnT9dll10mn8+nF198MdNfA8BGnSFDTbsO6pVt+9S066BthZnJ9oaJJdZsCW3eAWfxGIbhqPLuYDAor9erQCBA/QfgALnujRFviWw8K28ZH7eZWa5/C5DPrNy/CT4AxBXvxh+eH7CrN8ba5hb96NXt8gfj14CEUyfr509KOINBh1MgO6zcv1Nurw4gvyXrjeFRV4Hn5FG+rN+8p4yu0ORRPv30rZ167M2dJ71vJXXilDbvQG/GrrYAYnJab4w+BR7dWfcFPXPjRapgh1zA1Zj5ABCTU3tjhGdBSJ0A7kXwASAmJ/fGIHUCuBtpFwAxJVvm6lHXShF6YwCwiuADQEz0xgCQLQQfAOKaMrpCS268SD4KPAFkEDUfABKiwBNAphF8AEiKAk8AmUTaBQAA2IrgAwAA2IrgAwAA2IrgAwAA2IrgAwAA2IrgAwAA2IqltkCe6AwZ9OIA4AoEH0AeWNvcosVrtqsl8NkOsxXe/rp32ii6kAJwHNIugMutbW5R/fKtUYGHJPkD7apfvlVrm1tyNDIAiI2ZD8DFOkOGFq/ZLiPGe4a6NoD70at/1OD+/fTpkQ7SMQAcgeADyKJs12Fs2n3opBmP7gxJ/mCHZvznxshrpGMA5BrBB5AlVuowUg1SDhyOH3jEE07HPP1vF+nUgYUZDYwoegVgBsEHkAXhOoye6ZDwjb/7dvTpFIsOHdw/4fuxhMd0x8qtCnUbYLozIhS9AjCLglMgw5LVYUjS4jXb1Rky0i4WvaSmVBXe/kplbiHUY4DpFKhS9ArACoIPIMPM1GG0BNq14eODpoOUePoUeHTvtFGSlFIAksp39mQl2AIAieADyDizdRhNuw6aClI27T6U8DxTRldoyY0Xyee1noJJ9Tu7MxtsWTkngPxGzQeQYebrMMzNBJgJZqaMrtDkUb5IseeQgUW6a/X7ag22m/wW699p9dhUimMB5CdmPoAMS1aH4VFXIWbt54eYOp/ZYKZPgUe1w8p09QWf04ThQ/Sjr6SejrFSyGr22FSKYwHkJ4IPIMMS1WGEn987bZTGDyszFaRcUlOa0jjipWMSrXxN5TvNBlup/g4A+YfgA8iCeDd+n7d/ZJmt2SAlnT4ZU0ZXaP38SVp5y3g9cf0FWnnLeP30hgvlyeB32vE7AOQXj2EYjipBDwaD8nq9CgQCKi4uzvVwgLSYabqVi/4Y2fhO+nwAvZuV+7el4GPJkiVasmSJ/vKXv0iSzjnnHN1zzz2aOnWqJKm9vV133XWXVq1apY6ODl1xxRX62c9+pvLy8qwMHsgXuegMmo3vpMMp0HtlLfhYs2aN+vTpo+HDh8swDP3iF7/Qo48+qvfee0/nnHOO6uvr9frrr2vZsmXyer264447VFBQoHfeeScrgweS4WYIAPbIWvARS2lpqR599FFdd911Ou2007RixQpdd911kqQ///nPGjlypJqamjR+/PiMDx5IhDQAANjHyv075YLTzs5OrVq1SkePHlVtba22bNmiEydOqK6uLnLMiBEjVF1draamprjn6ejoUDAYjHoA6aLdNwA4l+Xg44MPPtCgQYNUVFSk2267TS+99JJGjRolv9+vwsJClZSURB1fXl4uv98f93wNDQ3yer2RR1VVleUfAXRHu28AcDbLwcfZZ5+tbdu2aePGjaqvr9fMmTO1ffv2lAewcOFCBQKByGPv3r0pnwuQaPcNAE5nub16YWGhzjrrLEnSmDFjtHnzZj3xxBP6+te/ruPHj6utrS1q9qO1tVU+ny/u+YqKilRUVGR95EActPsGAGdLu8lYKBRSR0eHxowZo379+qmxsTHy3o4dO7Rnzx7V1tam+zWAabT7BgBnszTzsXDhQk2dOlXV1dU6fPiwVqxYod/+9rf6zW9+I6/Xq5tvvlnz5s1TaWmpiouLNXv2bNXW1ppe6QJkQrjdtz8Qe1M1j7o6jfb2dt8sQwaQK5aCjwMHDuib3/ymWlpa5PV6dd555+k3v/mNJk+eLEl67LHHVFBQoOnTp0c1GQPsFG73Xb98qzyK3js23Xbfbr5hdx/7Xz49ppWb9sgfZBkyAPvRXh15K9N9PtzcNyTW2HsKh1DhvWcAwApbm4xlGsEHMilTMxXhviE9/8/ihht2vLHHEk5JrZ8/yTUzOgCcwcr92/JqF8BN+hR4VDusLK1zJOsb4lFX35DJo3yOu2EnGnss3Zchp3vdACCetFe7APnOSX1DOkOGmnYd1Cvb9qlp18GkjdKSjT0eliEDyCZmPpAzbinedErfkFRqTlIdE8uQAWQTwQdywk3Fm07oGxKvbiO8V028mhOrY2IZMgA7kHaB7dy26Vu4b0i8ORmPpLKBhfIH/m4qFWJVOnvVJBt7d+kuQwYAswg+YCs3bvoW7hsiKeZN3JB08OhxzX3hfd3w7AZNfPitqADKap1GT+nUnCQbe3c+b39Hr9oBkD9Iu8BWVm6kTlptMWV0hZbceFHSXhlSdCpEUtrppXRrTuKN3VdcpBsuqdaZQwY6uuYGQP4h+ICtnFK8mYopoys0eZRPm3Yfkj/Yrvte+6MOHT1x0nHh5bcLXvxAgWMnLNdp9GSl5iReEW/3sTu9wBdA/iP4gK2cULyZziqbcN+Qpl0HYwYeYYaktmOx37faG8TsXjV/O3pcEx9+K+4sSyZ6ngBAJhB8wFa53vTN7CqbZAFKujMzVtJLZvaq+cr5FZq1wvpqGADIBQpOYatEBZDZXm1hdpXN2uYWTXz4Ld3w7AbduWpbzCLSTM3MmA1iwnUbPm/095YXF+k7l5+l/978v64q4gXQu7G3C3LC7j4fnSHjpJREd+EZl0VXjtSsFe8l3cMlfL54MzhmrbxlvKVUSLKdaTP5XQBgBXu7wPHsLoA0u8rmh680m97DJVEqxJBUckq/mAWn4WNSSS+F6zbWNrfo8Tc/tBT4OLGIF0DvRNoFORO+kV59wedUO6wsqysvzN54kxWRdu+nES8V4vP21zM3XqSHrj1XUubTS1Y3iwujZToAp2DmA71CJm+83QOZZDM4MftrpJlesrpZHC3TATgNwQd6BTOrbEoHFurg0eNJz9UzkEm0hDUb6SUr6RNapgNwItIucDWzrcvNrLK57+rRSfdwqYgzg5BoHJlOL1mZxaFlOgAnYuYDrmV1xUzcNuPdPlNQoIT9NGLNINi9cifZLI4klQzop6dnXKTxn89uLQ0ApIKltnCleFvM91wSG0uyBmJWgol0xpGO8PdKsYMkZjsA2M3K/ZvgA65jtmfH+vmTUv6r30wLdjvGkYjdMy4AkAh9PpDX7NgZ18w+KLneoZfN4gC4FcEHXMcpO+M6YRxsFgfAjQg+kJZ0dohNlRN2xnXSOADAbQg+kLJc1Rzkemdcp40DANyGPh9IidkdYrMhlzvjOnEcAOA2BB+wLNHeInZt4Z5oXxU7l5k6ZRwA4CakXWBZrld5hDlltYdTxgEAbkHwAcucsMojzCmrPZwyDgBwA9IusIxVHgCAdBB8wLLwKo9UNmADAMBS8NHQ0KCLL75YgwcP1tChQ3XNNddox44dUce0t7dr1qxZKisr06BBgzR9+nS1trZmdNDILVZ5AADSYSn4WLdunWbNmqUNGzbojTfe0IkTJ/TlL39ZR48ejRwzd+5crVmzRqtXr9a6deu0f/9+XXvttRkfOHKLVR4AgFSltbHcX//6Vw0dOlTr1q3TZZddpkAgoNNOO00rVqzQddddJ0n685//rJEjR6qpqUnjx49Pek42lnOXXHQ4BQA4j20bywUCAUlSaWlXbn/Lli06ceKE6urqIseMGDFC1dXVpoMPuAurPAAAVqUcfIRCIc2ZM0cTJkzQ6NGjJUl+v1+FhYUqKSmJOra8vFx+vz/meTo6OtTR0RF5HgwGUx0SAABwgZRXu8yaNUvNzc1atWpVWgNoaGiQ1+uNPKqqqtI6HwAAcLaUgo877rhDr732mt5++22dfvrpkdd9Pp+OHz+utra2qONbW1vl8/linmvhwoUKBAKRx969e1MZEhygM2SoaddBvbJtn5p2Hcxqe3UAgHtZSrsYhqHZs2frpZde0m9/+1vV1NREvT9mzBj169dPjY2Nmj59uiRpx44d2rNnj2pra2Oes6ioSEVFRSkOH06Rqx1uAQDuY2m1y+23364VK1bolVde0dlnnx153ev1asCAAZKk+vp6/epXv9KyZctUXFys2bNnS5L+8Ic/mPoOVru4T3iH257/QwqveWHpLQDkPyv3b0vBh8cTewnl0qVL9a1vfUtSV5Oxu+66SytXrlRHR4euuOIK/exnP4ubdkln8G6VT8tTO0OGJj78VtyN5jzq6v2xfv4k1/5GAEByWQs+7JDvwUe+pSeadh3UDc9uSHrcylvGsyQXAPKYlfs3e7vYKJye6DlL4A+0q375Vq1tbsnRyKJZKRx10g63AAB3SKvJGMzrDBlavGb7SXURkmSoKz2xeM12TR7ly2l6wurMDDvcAgCsYubDJpt2H4pbFyF1BSAtgXZt2n3IvkH1kMrMDDvcAgCsIviwidPTE8lmZqSumZmeKZh0drilLwgA9E6kXWzi9PSElZmZnoWj4R1ue6ZrfAnSNflWeAsAMI/gwybh9IQ/0B5zdiG8JDVX6Yl0Z2amjK7Q5FE+U0uI4/UFCad36AsCAPmNtItN0klP2CETMzPhHW6vvuBzqh1WFjfVkkp6BwCQPwg+bBROT/i80Tdwn7d/zv/at6tw1K7CW+pJAMC5SLvYzEp6wk7hmZn65VvlkaJmJjI5M2NH4S31JADgbMx85ICZ9EQu2DEzk+3CW7c0cgOA3oyZD0SZMrpCk0aU6/80/UWfHDqmM0pP0Tdqz1Rh3644Nd19abJZeOuWRm4A0NsRfCBKrJTFf67fHSmWTTedkc30TjrLhQEA9iHtgohEKYvblm/VbRlKZ2QrveP0Rm4AgC7MfECSuSWwsaSazshG4a3TG7kBALoQfEBS8pRFIqmmM8KFt5ni9EZuAIAupF1s4vS+E5lIReQ6neH0Rm4AgC7MfNjADX0nMpGKcEI6I5V9ZgAA9iL4yDK37GOSLGWRiNPSGU5t5AYA6ELaJYvctI+JmZRFLE5NZzi1kRsAgOAjq+zaxyRT4i2B9Z7STyWn9Iv5GSfsSwMAcBfSLlnkxr4TPVMWf/n0mB5/88O4qZhFV1JHAQCwhpmPLHJr34lwyuKq8yq1avOeuIGHR9J9rzsjbQQAcA+Cjyyya5v6bHFb2ggA4A4EH1mUqIhT6rp5O61Qszs3po0AAM5H8JFl4SJOb4yCzXhFnE7h1rQRAMDZCD5sEjh2IuZrVjdl6ymbnVPdnjYCADgTq12yLFmvj1Q2ZQvLdufUcNqofvlWeRS9wZxT+3sAAJyPmY8sy1bRZrhzaia2uE8kXu8P+nsAAFLFzEeWZaNoM5uzKbHQrhwAkEkEH1mWjaJNK7MpmdqyPtz7I57OkEFwAgAwheAjy5Jt2JbKpmxOWwLrhl17AQDOQc1HlpnZsM1q0aaTlsDaVXsCAMgfloOP3/3ud5o2bZoqKyvl8Xj08ssvR71vGIbuueceVVRUaMCAAaqrq9POnTszNV5XynTRplOWwLpp114AgHNYDj6OHj2q888/X08//XTM9x955BE9+eSTeuaZZ7Rx40YNHDhQV1xxhdrbe3cXzCmjK7R+/iStvGW8nrj+Aq28ZbzWz5+UUloiG7MpqaD9OgAgFZZrPqZOnaqpU6fGfM8wDD3++OP64Q9/qKuvvlqS9Mtf/lLl5eV6+eWXdf3116c3WpdLVrRpRXg2pWethc/GWgun1Z4AANwhowWnu3fvlt/vV11dXeQ1r9ercePGqampKWbw0dHRoY6OjsjzYDCYySHltVwvgXVS7QkAwD0yGnz4/X5JUnl5edTr5eXlkfd6amho0OLFizM5jF6l52xKuN26HcFINlbyAADyX86X2i5cuFDz5s2LPA8Gg6qqqsrhiNzL7iWvtF8HAKQio0ttfT6fJKm1tTXq9dbW1sh7PRUVFam4uDjqAetyteSV9usAAKsyOvNRU1Mjn8+nxsZGXXDBBZK6ZjI2btyo+vr6TH4VurG73XpPua49AQC4i+Xg48iRI/roo48iz3fv3q1t27aptLRU1dXVmjNnju6//34NHz5cNTU1WrRokSorK3XNNddkctzoJhft1nvK5EoeAEB+sxx8vPvuu/rSl74UeR6u15g5c6aWLVumu+++W0ePHtWtt96qtrY2TZw4UWvXrlX//u5e8eDkvUtY8goAcBPLwcc///M/yzDid6z0eDz68Y9/rB//+MdpDcxJnL53iduWvDo5kAMAZF/OV7s4XbiQs2e4FS7kdEJRpZuWvDo9kAMAZB8byyWQzb1Lwv04Xtm2T027Dqa1/4lT2q0nwyZ0AACJmY+EslXIaeWvf7MpCie0W08k1ytyAADOQfCRQDYKOa2kcaymKJy85NUJK3IAAM5A8JGAlULOnjMUY844VVs++VtUECDJ9F//b2z3p1Rr4tQlr6zIAQCEEXwkYLaQ829HOzTx4bei/rIv8EjdyzgqvP11/cVVpv7637DrYN6lKNy2IgcAkD0UnCZgppDzK+dXaNaK904KKnrWj/oD7XrszZ2mvrfp409NpyjcIhzIxQuVPOoK0JywIgcAkF0EH0kk2rvk6X+7SK++3xJzhqIna2tZzM1muClF4ZYVOQCA7CPtYkK8Qs5kRZSpKPBI42pK9dO3kx/rthSF01fkAADsQfBhUriQM1xY+tr/7NfO1sMZ/56QIRUUeFzTNMwqJ6/IAQDYg+DDglhLX7Ph0yMdunfaKNUv3yqPolM2+ZCicOqKHACAPaj5MCled85sGDq4f8JaEye0dAcAIFXMfJiQqDunWeEZjJJT+ilw7ISpdAopCgBAPiL4MCGVwtKefT7CRZWSLKVTSFEAAPINwYcJVpe0zq0brvp/PuukDqfhoIIVHwCA3ozgwwQrS1o9klZt3qs7Jg2PO2NBOgUA0JsRfJiQrM16d2Y3SCOdAgDorVjtYkL37pxmuan7KAAAdiL4iKEzZKhp10G9sm2fmnYdVGfIiCx9LR1YaOocbus+CgCAXUi79BCrkVhFt2LQSSPKNb7hTR06eiLm593cfRQAADsw89FNvEZi/kC76pdv1drmFhX2LdCD/3quPGKDNAAAUtFrg4+eqZXj/wjFbSQWfm3xmu1RKRgndR+NlSoCAMCJemXaJVZqpXRgoQ4dPR73Mz1XsThpuWyyVBEAAE7Sa4KP8G60b27367l3/nLS+4kCj+66r2JxwnLZcKqo5zxHOFXEPjAAAKfpFcFHJnejddIqlkR7zhjqqkFZvGa7Jo/yUYMCAHCMvK/5yNRutB51pTKctIol2Z4z3VNFAAA4RV4HH5nYjVZy7ioWs43MaHgGAHCSvA4+UtmNVpJKB/aLep7LVSyJmE0BOSlVBABAXtd8WP2LP9wgbN33vhR3R1onSbbnDA3PAABOlNfBh9XdaKWu1Eph34Kcr2IxI7znTP3yrfJIUQGIU1NFAADkddolPDNg5tbr1NRKMk5seAYAQCIewzCy0grz6aef1qOPPiq/36/zzz9fTz31lC655JKknwsGg/J6vQoEAiouLk57HOHVLtLJMwOGpJsmnKnJo3yOTa2YFe5j4vRUEQAgP1m5f2cl+Pjv//5vffOb39QzzzyjcePG6fHHH9fq1au1Y8cODR06NOFnMx18SHQABQAg23IefIwbN04XX3yxfvrTn0qSQqGQqqqqNHv2bC1YsCDhZ7MRfEjMDAAAkE1W7t8ZLzg9fvy4tmzZooULF0ZeKygoUF1dnZqamk46vqOjQx0dHZHnwWAw00OS5IxW6AAAIAsFp59++qk6OztVXl4e9Xp5ebn8fv9Jxzc0NMjr9UYeVVVVmR4SAABwkJyvdlm4cKECgUDksXfv3lwPCQAAZFHG0y5DhgxRnz591NraGvV6a2urfD7fSccXFRWpqKgo08MAAAAOlfGZj8LCQo0ZM0aNjY2R10KhkBobG1VbW5vprwMAAC6TlQ6n8+bN08yZMzV27Fhdcsklevzxx3X06FF9+9vfzsbXAQAAF8lK8PH1r39df/3rX3XPPffI7/frggsu0Nq1a08qQgUAAL1P1jqcpipbfT4AAED2WLl/53y1CwAA6F0IPgAAgK2yUvORjnAWKFudTgEAQOaF79tmqjkcF3wcPnxYkuh0CgCACx0+fFherzfhMY4rOA2FQtq/f78GDx4sjyczG78Fg0FVVVVp7969FLFmGdfaPlxr+3Ct7cO1tk+mr7VhGDp8+LAqKytVUJC4qsNxMx8FBQU6/fTTs3Lu4uJi/sdsE661fbjW9uFa24drbZ9MXutkMx5hFJwCAABbEXwAAABb9Yrgo6ioSPfeey8b2NmAa20frrV9uNb24VrbJ5fX2nEFpwAAIL/1ipkPAADgHAQfAADAVgQfAADAVgQfAADAVnkffDz99NM688wz1b9/f40bN06bNm3K9ZBcr6GhQRdffLEGDx6soUOH6pprrtGOHTuijmlvb9esWbNUVlamQYMGafr06Wptbc3RiPPHQw89JI/Hozlz5kRe41pnzr59+3TjjTeqrKxMAwYM0Lnnnqt333038r5hGLrnnntUUVGhAQMGqK6uTjt37szhiN2ps7NTixYtUk1NjQYMGKBhw4bpvvvui9oThGudmt/97neaNm2aKisr5fF49PLLL0e9b+a6Hjp0SDNmzFBxcbFKSkp0880368iRI5kdqJHHVq1aZRQWFhr/9V//Zfzxj380brnlFqOkpMRobW3N9dBc7YorrjCWLl1qNDc3G9u2bTP+5V/+xaiurjaOHDkSOea2224zqqqqjMbGRuPdd981xo8fb1x66aU5HLX7bdq0yTjzzDON8847z7jzzjsjr3OtM+PQoUPGGWecYXzrW98yNm7caHz88cfGb37zG+Ojjz6KHPPQQw8ZXq/XePnll43333/f+MpXvmLU1NQYf//733M4cvd54IEHjLKyMuO1114zdu/ebaxevdoYNGiQ8cQTT0SO4Vqn5le/+pXxgx/8wHjxxRcNScZLL70U9b6Z6zplyhTj/PPPNzZs2GD8/ve/N8466yzjhhtuyOg48zr4uOSSS4xZs2ZFnnd2dhqVlZVGQ0NDDkeVfw4cOGBIMtatW2cYhmG0tbUZ/fr1M1avXh055k9/+pMhyWhqasrVMF3t8OHDxvDhw4033njD+OIXvxgJPrjWmTN//nxj4sSJcd8PhUKGz+czHn300chrbW1tRlFRkbFy5Uo7hpg3rrzySuOmm26Keu3aa681ZsyYYRgG1zpTegYfZq7r9u3bDUnG5s2bI8f8+te/Njwej7Fv376MjS1v0y7Hjx/Xli1bVFdXF3mtoKBAdXV1ampqyuHI8k8gEJAklZaWSpK2bNmiEydORF37ESNGqLq6mmufolmzZunKK6+MuqYS1zqTXn31VY0dO1Zf/epXNXToUF144YV69tlnI+/v3r1bfr8/6lp7vV6NGzeOa23RpZdeqsbGRn344YeSpPfff1/r16/X1KlTJXGts8XMdW1qalJJSYnGjh0bOaaurk4FBQXauHFjxsbiuI3lMuXTTz9VZ2enysvLo14vLy/Xn//85xyNKv+EQiHNmTNHEyZM0OjRoyVJfr9fhYWFKikpiTq2vLxcfr8/B6N0t1WrVmnr1q3avHnzSe9xrTPn448/1pIlSzRv3jx9//vf1+bNm/Wd73xHhYWFmjlzZuR6xvo3hWttzYIFCxQMBjVixAj16dNHnZ2deuCBBzRjxgxJ4lpniZnr6vf7NXTo0Kj3+/btq9LS0oxe+7wNPmCPWbNmqbm5WevXr8/1UPLS3r17deedd+qNN95Q//79cz2cvBYKhTR27Fg9+OCDkqQLL7xQzc3NeuaZZzRz5swcjy6/vPDCC3r++ee1YsUKnXPOOdq2bZvmzJmjyspKrnUvkbdplyFDhqhPnz4nVf23trbK5/PlaFT55Y477tBrr72mt99+W6effnrkdZ/Pp+PHj6utrS3qeK69dVu2bNGBAwd00UUXqW/fvurbt6/WrVunJ598Un379lV5eTnXOkMqKio0atSoqNdGjhypPXv2SFLkevJvSvq+973vacGCBbr++ut17rnn6hvf+Ibmzp2rhoYGSVzrbDFzXX0+nw4cOBD1/j/+8Q8dOnQoo9c+b4OPwsJCjRkzRo2NjZHXQqGQGhsbVVtbm8ORuZ9hGLrjjjv00ksv6a233lJNTU3U+2PGjFG/fv2irv2OHTu0Z88err1Fl19+uT744ANt27Yt8hg7dqxmzJgR+W+udWZMmDDhpCXjH374oc444wxJUk1NjXw+X9S1DgaD2rhxI9faomPHjqmgIPr206dPH4VCIUlc62wxc11ra2vV1tamLVu2RI556623FAqFNG7cuMwNJmOlqw60atUqo6ioyFi2bJmxfft249ZbbzVKSkoMv9+f66G5Wn19veH1eo3f/va3RktLS+Rx7NixyDG33XabUV1dbbz11lvGu+++a9TW1hq1tbU5HHX+6L7axTC41pmyadMmo2/fvsYDDzxg7Ny503j++eeNU045xVi+fHnkmIceesgoKSkxXnnlFeN//ud/jKuvvprlnymYOXOm8bnPfS6y1PbFF180hgwZYtx9992RY7jWqTl8+LDx3nvvGe+9954hyfjJT35ivPfee8Ynn3xiGIa56zplyhTjwgsvNDZu3GisX7/eGD58OEttrXrqqaeM6upqo7Cw0LjkkkuMDRs25HpIricp5mPp0qWRY/7+978bt99+u3Hqqacap5xyivGv//qvRktLS+4GnUd6Bh9c68xZs2aNMXr0aKOoqMgYMWKE8fOf/zzq/VAoZCxatMgoLy83ioqKjMsvv9zYsWNHjkbrXsFg0LjzzjuN6upqo3///sbnP/954wc/+IHR0dEROYZrnZq333475r/PM2fONAzD3HU9ePCgccMNNxiDBg0yiouLjW9/+9vG4cOHMzpOj2F0aykHAACQZXlb8wEAAJyJ4AMAANiK4AMAANiK4AMAANiK4AMAANiK4AMAANiK4AMAANiK4AMAANiK4AMAANiK4AMAANiK4AMAANiK4AMAANjq/wGbspW8nhoj8gAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(X[:,0],X[:,1])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.decomposition import PCA\n",
    "pca=PCA(n_components=1)\n",
    "pca.fit(X)\n",
    "X_reduction=pca.transform(X)\n",
    "X_restore=pca.inverse_transform(X_reduction)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(X_restore[:,0],X_restore[:,1])\n",
    "plt.show()#可能丢失了信息，也可能是丢掉了噪音"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "手写识别的例子"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn import datasets\n",
    "digits=datasets.load_digits()\n",
    "x=digits.data\n",
    "y=digits.target"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "noisy_digits=x+np.random.normal(0.,5.,size=x.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "example_digits=noisy_digits[y==0,:][:10]#取y=0的数据，取十个\n",
    "for num in range(1,10):\n",
    "    X_num=noisy_digits[y==num,:][:10]\n",
    "    example_digits=np.vstack([example_digits,X_num])#循环合并0-9噪声的手写数据（各10个）\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(100, 64)"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "example_digits.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "\"\"\"\n",
    "这段代码定义了一个函数 `plot_digits`，该函数接受一个数据集 `data` 作为输入。函数的功能是将数据集中的前100个样本按照10x10的网格形式展示出来。\n",
    "\n",
    "具体步骤如下：\n",
    "1. 创建一个大小为10x10的子图 `fig`，并设置子图的大小为10x10，同时设置子图的属性，包括不显示坐标轴、设置子图之间的水平和垂直间距。\n",
    "2. 遍历子图中的每一个小图，将数据集中对应位置的样本展示在小图中。展示的方式是将每个样本reshape成8x8的矩阵，使用二值色图（binary colormap）进行显示，插值方式为最近邻插值，像素值范围在0到16之间。\n",
    "\n",
    "这段代码的作用是将数据集中的前100个样本以图像的形式展示出来，方便对数据进行可视化分析。\n",
    "\"\"\"\n",
    "def plot_digits(data):\n",
    "    fig,axes=plt.subplots(10,10,figsize=(10,10),\n",
    "                          subplot_kw={'xticks':[],'yticks':[]},\n",
    "                          gridspec_kw=dict(hspace=0.1,wspace=0.1)\n",
    "                          )\n",
    "    for i,ax in enumerate(axes.flat):\n",
    "        ax.imshow(data[i].reshape(8,8),\n",
    "                  cmap='binary',interpolation='nearest',\n",
    "                  clim=(0,16)\n",
    "                  )\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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TJw4MViPxWKuoXylS5e20qVLJ6x77gehtY9Tg5E976v16tWTmffff19mQmKxmOuzRNOmTVO+V7700ksyc80116T0GmYWvBfHLVy4UGZatmyZsOb5DBfHTz4AAAAARILNBwAAAIBIsPkAAAAAEAk2HwAAAAAiweYDAAAAQCTYfAAAAACIBJsPAAAAAJFg8wEAAAAgEv/xIYOeIUQejz/+eCSv8+GHH6bcIxaLyaFVn3zySXDo21FHHSVfxzMsr0WLFsF65cqVZY8RI0bIjGcgTzqG5e3evdtKlCghcyHDhw+XmZIlU7805s+fLzMnn3yyzFSvXj1Yj8Viske1atWCw5DOOuss2WP79u0yo4YmquGNXr1795aZAw88MFgvV66c67UWL14cvFYvvvhi2ePRRx+VGc9QN+Wiiy6SmXfffTfl1/FYunRpcFhev379ZA/P0Krvv/8+WFdD4czMZsyYITMebdu2DdY912qLFi2C16rnfuy5r3vu2crQoUNT7mFmdvrppwfrnnWbP39+8Dpt06aN7NGgQQOZ8bxPKT/99FPKPcxMvhd63yvHjx8fvB/26NFD9ti9e7frtUIGDhwoM1WrVpWZkSNHyky7du0S1nJzc+W/NzOrWLFi8Fr1fNbo2bOnzKjhi02aNJE9li5dKjOezyzNmzdPWNuxY4f893H85AMAAABAJNh8AAAAAIgEmw8AAAAAkWDzAQAAACASbD4AAAAARILNBwAAAIBIsPkAAAAAEIn/+JwPNZ/D7K+ZF8r48eOD9T59+sgew4YNkxk1p8BMz13wqFmzZvAZ+NOnT5c9rrzySpl55513gnXPc80980Q8DjrooGDd82ztzp07B5+r7bF27VqZqV+/fkqvYWZ29913y4xnzkc6vP7668HnuHfp0kX2KFWqlMycccYZwXrfvn1lj4MPPlhm6tSpIzPp0qpVq+A5980338geb7/9tsyccMIJwfr69etlj5NOOklmBgwYIDPbtm1LWPM+z//oo48OrpvnmfKh44hr376963hCPDNWPLNlmjVrlvKxKA0bNpQZz3uUeo957rnnZI/8/HyZ8czTmTZtWrDumR9w0EEHWVZWlsyFeObxqFlgnjksNWvWlBnPZ5pOnToF696ZJN26dUv5fdVjzZo1wbrn/vXxxx/LzJw5c2Tm999/T1grXjw9/12+adOmaemjrsVWrVrJHp7PNOo6NDO74447Etb27t0r/30cP/kAAAAAEAk2HwAAAAAiweYDAAAAQCTYfAAAAACIBJsPAAAAAJFg8wEAAAAgEmw+AAAAAESCzQcAAACASKQ8ZHDv3r3BwSKegW6LFy9O9TBctm7dKjMffPCBzJx11lnBek5OjuzRuHHj4FCfww47TPbYuHGjzHiGCCqe4YwtWrSQmWXLlgXrsVjMfUyJ/PLLLzLjGbYzc+bMYN0z9Oqqq66SmXPPPVdm1GA+zyCpevXqWWZmZsK6Z7imGhJppoeKegZneQakHXfccTLjuT7SwTNYbu7cuTKj1jfVAWpxnuM9/fTTE9ZycnJcA+g+/fTT4Dl32mmnyR4eW7ZsCdYrV64se3iGgXnWrbCwMKW6mdkXX3wRXLdzzjlH9igoKJCZjIyMYH3nzp2yh4f6/piZ7dq1K6W6mdnmzZuDQw8974WeAYG33XZbsN69e3fZw/P+fvTRR8tMtWrVgvWyZcvKHmZ/rV1ojR966CHZ45lnnpGZRo0aBes33nij7HH55ZfLzGWXXSYzoSHNnvd3j9B9NM7z/u0Z5qkMHjxYZh5++OGUX8eLn3wAAAAAiASbDwAAAACRYPMBAAAAIBJsPgAAAABEgs0HAAAAgEiw+QAAAAAQCTYfAAAAACLB5gMAAABAJFIeMrhv3z7bt29fwvq3334re8yePVtmLr744mDdM6hw3rx5MjN+/HiZee+994J1z4CaPn36WOnSpRPWR40aJXtMnjxZZm666aZg/YILLpA9jj32WJlZvny5zKivyTNI55prrrFSpUolrPfr10/2qF27tsyoYYXXXXed7JEunTp1CtY961axYkUrX758wvott9wie3jOg86dOwfr33zzjewxcuRImfEMtJozZ06w7hnulC4vvPCCzITOazOzG264Qfbw3BM6duwoMxMnTkxY8w682rNnj+3Zsydhfdu2bbLH0KFDZaZLly7BemiYWJxnKN8999wjM4899liwXqxYMdnj+OOPDw6g9SheXP93xUsuuSRYHzt2rOzRo0cPmalSpYrMqPd3zwDal156KfieesIJJ8geaoCgmdnKlSuDdc8QvOHDh8uM57xVg3u997iqVasGz7levXrJHp5z+8EHHwzW77vvPtnDM5zU8/npp59+khnl+++/D76vNm7cWPaYMGGCzCxZsiRY99y/PEMG161bJzOhz3q5ubny38fxkw8AAAAAkWDzAQAAACASbD4AAAAARILNBwAAAIBIsPkAAAAAEAk2HwAAAAAiweYDAAAAQCTYfAAAAACIRMpDBsuUKWNlypRJWPcMtJoyZYrMDBkyJFhfvXq17DFz5kyZ8VDDinJycmSPYcOGBYf6hIZ8xd18880y88QTTwTra9eulT2ys7Nl5o033pCZAw74/7V39yqtLVEAgMdTCoK3sbASCxtBxFrsLHwCO8HGytZGXyC9jYWFnZWVha/gS1gFbCwEA/7rvsUhkMs9mbXcCZvL5fsgTWaxmb12ZsaVw8n6qzqeaYh0cXExcQOu8/PzMOby8rI6nmmeubq6Gsb0er0wZn9/vzr+9PQUNgkcDAbVRkQbGxvhPDINoLa2tqrjmUafGZmGbwsLC9XxbEOk3d3dagPA4+Pj8BrRMyyllNvb2+r4wcFBeI35+fkwJqP2HDP7Wym/m1LW1mpmrpl9fXNzszqeme/p6WkYc3h4GMbc3d1NPJdIpvnfzc1NGLO2tlYdzzQQvLq6CmMeHx/DmKWlpep45mzo9XoTn6l7e3thTCTTzHBlZSWMOTs7C2OihrnT+LyVUsry8nIYc3R0FMbUmkCWUqoN+4ZOTk7CmIeHhzBmZ2dn7FimqWUpv5vmzs7Ojh2PmgOWUsr29nYYE53vmebY19fXYUymOeP6+vrYsWzeSvEvHwAAQEcUHwAAQCcUHwAAQCcUHwAAQCcUHwAAQCcUHwAAQCcUHwAAQCda9/lomqaU8rPf9R3n+fk5jHl7e6uOf35+htfI/OZ15n6i6wzHhzkalc3by8tLOI+MWm+HrK+vrzAm8wyj3/geXmOSvGVkcht9nrI9IiKvr69hTHTPw/Fa3qLfyZ/GPErJrcNpiPaDUuJnNMzJn/I2+n50T5keBJnP3Pv7exgTGXcvP1Xb44Z5jfIW7ZO/fsXffX18fIQx07jnzPOZxtlQy900z4ZM3qI1lLnfzL6fmW+0hjJnQ5T7aZ2pkcwemFnrmflO8rfI6PvTOFcze3J0zmTWcuasyuzJtXuunamj70fPKLMOp/W3RCSzVjPznSRv/9C01O/3m1KKV+XV7/flTd7k7T/++lPe5E7eus6dvMlbl3mTO3nrOm+jZpqm3ddG39/f5f7+vszNzZWZmZk2l/jfapqmDAaDsri4+K9v9+RtPHlrR97aqeWtFLkbR97as1bbkbd2rNV25K2dKG+jWhcfAAAAP+E/nAMAAJ1QfAAAAJ1QfAAAAJ1QfAAAAJ1QfAAAAJ1QfAAAAJ1QfAAAAJ1QfAAAAJ1QfAAAAJ1QfAAAAJ1QfAAAAJ1QfAAAAJ34GzVVWDslZxnEAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 1000x1000 with 100 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_digits(example_digits)#噪音明显"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "使用PCA降噪"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style>#sk-container-id-1 {\n",
       "  /* Definition of color scheme common for light and dark mode */\n",
       "  --sklearn-color-text: black;\n",
       "  --sklearn-color-line: gray;\n",
       "  /* Definition of color scheme for unfitted estimators */\n",
       "  --sklearn-color-unfitted-level-0: #fff5e6;\n",
       "  --sklearn-color-unfitted-level-1: #f6e4d2;\n",
       "  --sklearn-color-unfitted-level-2: #ffe0b3;\n",
       "  --sklearn-color-unfitted-level-3: chocolate;\n",
       "  /* Definition of color scheme for fitted estimators */\n",
       "  --sklearn-color-fitted-level-0: #f0f8ff;\n",
       "  --sklearn-color-fitted-level-1: #d4ebff;\n",
       "  --sklearn-color-fitted-level-2: #b3dbfd;\n",
       "  --sklearn-color-fitted-level-3: cornflowerblue;\n",
       "\n",
       "  /* Specific color for light theme */\n",
       "  --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
       "  --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
       "  --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
       "  --sklearn-color-icon: #696969;\n",
       "\n",
       "  @media (prefers-color-scheme: dark) {\n",
       "    /* Redefinition of color scheme for dark theme */\n",
       "    --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
       "    --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
       "    --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
       "    --sklearn-color-icon: #878787;\n",
       "  }\n",
       "}\n",
       "\n",
       "#sk-container-id-1 {\n",
       "  color: var(--sklearn-color-text);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 pre {\n",
       "  padding: 0;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 input.sk-hidden--visually {\n",
       "  border: 0;\n",
       "  clip: rect(1px 1px 1px 1px);\n",
       "  clip: rect(1px, 1px, 1px, 1px);\n",
       "  height: 1px;\n",
       "  margin: -1px;\n",
       "  overflow: hidden;\n",
       "  padding: 0;\n",
       "  position: absolute;\n",
       "  width: 1px;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-dashed-wrapped {\n",
       "  border: 1px dashed var(--sklearn-color-line);\n",
       "  margin: 0 0.4em 0.5em 0.4em;\n",
       "  box-sizing: border-box;\n",
       "  padding-bottom: 0.4em;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-container {\n",
       "  /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
       "     but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
       "     so we also need the `!important` here to be able to override the\n",
       "     default hidden behavior on the sphinx rendered scikit-learn.org.\n",
       "     See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
       "  display: inline-block !important;\n",
       "  position: relative;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-text-repr-fallback {\n",
       "  display: none;\n",
       "}\n",
       "\n",
       "div.sk-parallel-item,\n",
       "div.sk-serial,\n",
       "div.sk-item {\n",
       "  /* draw centered vertical line to link estimators */\n",
       "  background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
       "  background-size: 2px 100%;\n",
       "  background-repeat: no-repeat;\n",
       "  background-position: center center;\n",
       "}\n",
       "\n",
       "/* Parallel-specific style estimator block */\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item::after {\n",
       "  content: \"\";\n",
       "  width: 100%;\n",
       "  border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
       "  flex-grow: 1;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel {\n",
       "  display: flex;\n",
       "  align-items: stretch;\n",
       "  justify-content: center;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  position: relative;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item {\n",
       "  display: flex;\n",
       "  flex-direction: column;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item:first-child::after {\n",
       "  align-self: flex-end;\n",
       "  width: 50%;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item:last-child::after {\n",
       "  align-self: flex-start;\n",
       "  width: 50%;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item:only-child::after {\n",
       "  width: 0;\n",
       "}\n",
       "\n",
       "/* Serial-specific style estimator block */\n",
       "\n",
       "#sk-container-id-1 div.sk-serial {\n",
       "  display: flex;\n",
       "  flex-direction: column;\n",
       "  align-items: center;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  padding-right: 1em;\n",
       "  padding-left: 1em;\n",
       "}\n",
       "\n",
       "\n",
       "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
       "clickable and can be expanded/collapsed.\n",
       "- Pipeline and ColumnTransformer use this feature and define the default style\n",
       "- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
       "*/\n",
       "\n",
       "/* Pipeline and ColumnTransformer style (default) */\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable {\n",
       "  /* Default theme specific background. It is overwritten whether we have a\n",
       "  specific estimator or a Pipeline/ColumnTransformer */\n",
       "  background-color: var(--sklearn-color-background);\n",
       "}\n",
       "\n",
       "/* Toggleable label */\n",
       "#sk-container-id-1 label.sk-toggleable__label {\n",
       "  cursor: pointer;\n",
       "  display: block;\n",
       "  width: 100%;\n",
       "  margin-bottom: 0;\n",
       "  padding: 0.5em;\n",
       "  box-sizing: border-box;\n",
       "  text-align: center;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 label.sk-toggleable__label-arrow:before {\n",
       "  /* Arrow on the left of the label */\n",
       "  content: \"▸\";\n",
       "  float: left;\n",
       "  margin-right: 0.25em;\n",
       "  color: var(--sklearn-color-icon);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 label.sk-toggleable__label-arrow:hover:before {\n",
       "  color: var(--sklearn-color-text);\n",
       "}\n",
       "\n",
       "/* Toggleable content - dropdown */\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content {\n",
       "  max-height: 0;\n",
       "  max-width: 0;\n",
       "  overflow: hidden;\n",
       "  text-align: left;\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content.fitted {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content pre {\n",
       "  margin: 0.2em;\n",
       "  border-radius: 0.25em;\n",
       "  color: var(--sklearn-color-text);\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content.fitted pre {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
       "  /* Expand drop-down */\n",
       "  max-height: 200px;\n",
       "  max-width: 100%;\n",
       "  overflow: auto;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
       "  content: \"▾\";\n",
       "}\n",
       "\n",
       "/* Pipeline/ColumnTransformer-specific style */\n",
       "\n",
       "#sk-container-id-1 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  color: var(--sklearn-color-text);\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "/* Estimator-specific style */\n",
       "\n",
       "/* Colorize estimator box */\n",
       "#sk-container-id-1 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-label label.sk-toggleable__label,\n",
       "#sk-container-id-1 div.sk-label label {\n",
       "  /* The background is the default theme color */\n",
       "  color: var(--sklearn-color-text-on-default-background);\n",
       "}\n",
       "\n",
       "/* On hover, darken the color of the background */\n",
       "#sk-container-id-1 div.sk-label:hover label.sk-toggleable__label {\n",
       "  color: var(--sklearn-color-text);\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "/* Label box, darken color on hover, fitted */\n",
       "#sk-container-id-1 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
       "  color: var(--sklearn-color-text);\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "/* Estimator label */\n",
       "\n",
       "#sk-container-id-1 div.sk-label label {\n",
       "  font-family: monospace;\n",
       "  font-weight: bold;\n",
       "  display: inline-block;\n",
       "  line-height: 1.2em;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-label-container {\n",
       "  text-align: center;\n",
       "}\n",
       "\n",
       "/* Estimator-specific */\n",
       "#sk-container-id-1 div.sk-estimator {\n",
       "  font-family: monospace;\n",
       "  border: 1px dotted var(--sklearn-color-border-box);\n",
       "  border-radius: 0.25em;\n",
       "  box-sizing: border-box;\n",
       "  margin-bottom: 0.5em;\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-estimator.fitted {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-0);\n",
       "}\n",
       "\n",
       "/* on hover */\n",
       "#sk-container-id-1 div.sk-estimator:hover {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-estimator.fitted:hover {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
       "\n",
       "/* Common style for \"i\" and \"?\" */\n",
       "\n",
       ".sk-estimator-doc-link,\n",
       "a:link.sk-estimator-doc-link,\n",
       "a:visited.sk-estimator-doc-link {\n",
       "  float: right;\n",
       "  font-size: smaller;\n",
       "  line-height: 1em;\n",
       "  font-family: monospace;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  border-radius: 1em;\n",
       "  height: 1em;\n",
       "  width: 1em;\n",
       "  text-decoration: none !important;\n",
       "  margin-left: 1ex;\n",
       "  /* unfitted */\n",
       "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
       "  color: var(--sklearn-color-unfitted-level-1);\n",
       "}\n",
       "\n",
       ".sk-estimator-doc-link.fitted,\n",
       "a:link.sk-estimator-doc-link.fitted,\n",
       "a:visited.sk-estimator-doc-link.fitted {\n",
       "  /* fitted */\n",
       "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
       "  color: var(--sklearn-color-fitted-level-1);\n",
       "}\n",
       "\n",
       "/* On hover */\n",
       "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
       ".sk-estimator-doc-link:hover,\n",
       "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
       ".sk-estimator-doc-link:hover {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-3);\n",
       "  color: var(--sklearn-color-background);\n",
       "  text-decoration: none;\n",
       "}\n",
       "\n",
       "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
       ".sk-estimator-doc-link.fitted:hover,\n",
       "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
       ".sk-estimator-doc-link.fitted:hover {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-3);\n",
       "  color: var(--sklearn-color-background);\n",
       "  text-decoration: none;\n",
       "}\n",
       "\n",
       "/* Span, style for the box shown on hovering the info icon */\n",
       ".sk-estimator-doc-link span {\n",
       "  display: none;\n",
       "  z-index: 9999;\n",
       "  position: relative;\n",
       "  font-weight: normal;\n",
       "  right: .2ex;\n",
       "  padding: .5ex;\n",
       "  margin: .5ex;\n",
       "  width: min-content;\n",
       "  min-width: 20ex;\n",
       "  max-width: 50ex;\n",
       "  color: var(--sklearn-color-text);\n",
       "  box-shadow: 2pt 2pt 4pt #999;\n",
       "  /* unfitted */\n",
       "  background: var(--sklearn-color-unfitted-level-0);\n",
       "  border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
       "}\n",
       "\n",
       ".sk-estimator-doc-link.fitted span {\n",
       "  /* fitted */\n",
       "  background: var(--sklearn-color-fitted-level-0);\n",
       "  border: var(--sklearn-color-fitted-level-3);\n",
       "}\n",
       "\n",
       ".sk-estimator-doc-link:hover span {\n",
       "  display: block;\n",
       "}\n",
       "\n",
       "/* \"?\"-specific style due to the `<a>` HTML tag */\n",
       "\n",
       "#sk-container-id-1 a.estimator_doc_link {\n",
       "  float: right;\n",
       "  font-size: 1rem;\n",
       "  line-height: 1em;\n",
       "  font-family: monospace;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  border-radius: 1rem;\n",
       "  height: 1rem;\n",
       "  width: 1rem;\n",
       "  text-decoration: none;\n",
       "  /* unfitted */\n",
       "  color: var(--sklearn-color-unfitted-level-1);\n",
       "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 a.estimator_doc_link.fitted {\n",
       "  /* fitted */\n",
       "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
       "  color: var(--sklearn-color-fitted-level-1);\n",
       "}\n",
       "\n",
       "/* On hover */\n",
       "#sk-container-id-1 a.estimator_doc_link:hover {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-3);\n",
       "  color: var(--sklearn-color-background);\n",
       "  text-decoration: none;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 a.estimator_doc_link.fitted:hover {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-3);\n",
       "}\n",
       "</style><div id=\"sk-container-id-1\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>PCA(n_components=0.5)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-1\" type=\"checkbox\" checked><label for=\"sk-estimator-id-1\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\">&nbsp;&nbsp;PCA<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.5/modules/generated/sklearn.decomposition.PCA.html\">?<span>Documentation for PCA</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></label><div class=\"sk-toggleable__content fitted\"><pre>PCA(n_components=0.5)</pre></div> </div></div></div></div>"
      ],
      "text/plain": [
       "PCA(n_components=0.5)"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "from sklearn.decomposition import PCA\n",
    "pca=PCA(0.5)#噪音比较大，所以保留0.5的信息\n",
    "pca.fit(noisy_digits)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "15"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pca.n_components_#降维（降噪音）后显示15维"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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zFEDbszMrrzySpmz/fbbB+OpVMpGjhwZ7NucOXOCfcvPz5fH4fHdd98F43vvvbes0bVrV5lz1113yZyePXsG46lUyjbZZJNg3yorK4PXaVK++OKLYPzaa6+VNTw98VADnlKplI0aNSrj+RT7nFM6deokcw444ACZc+utt8qc0L/mpVIpGzZsmOzb3Llzg+dcXl6ePI4k/OAHP5A5gwcPljmXXHKJzBkxYkQwvjFdq2o446RJk2SNUaNGyZyjjz5a5qif5Xmmfv3118HrdMWKFfI4evToIXPUs3mLLbaQNebOnStzHn74YZnj6dvgwYPltTpv3rzgOZfUYMtLL700GL/uuutkjTfeeEPmeH4HocF8qVTKhgwZIvv27bffBs+5goICeRwes2fPDsYPOuggWcNzHzzjjDNkTugel0qlbPPNNw/2JC3rlUH64VReXh5l8eGZ5q0UFhbKHE/TvA+G9T3A098rKysL1om1+PC8AfDkFBcXy5wYfUvqjWASU4Y9fYt1vqnrNCmlpaXBuOf3k9Rxej8Oz5QX+5xLQlL99fRO9U2dc7EWH56f43lOqXPb7H/WtaoWH56+ec43z7M7xrOhubk5keNQz+ak3qh/331r+311ziX1mpJ4M57UdeiZCp7rsyGpxYd6n+D5/cS8Vj3PD/7gHAAAAEAULD4AAAAARMHiAwAAAEAULD4AAAAARMHiAwAAAEAUOW9F1dzcHNxFwrOLyLfffitzTjjhhA06rvVpaWmROX379pU5atcMz64ara2t1traKvNCPK9nxx13DMY///zznI4hbenSpYnUUZqamoK7tHh2dJg2bZrMee2114Jxz/aR77zzjsxZs2aNzFE7UKxdu1bWWLVqVfB882zjes8998icefPmBeMPPPCArOFx//33yxy1K4rn+jEzW7lyZbDHaitks3X9V958881gfPjw4bKGZ3vOe++9V+aEriPvDi51dXXBOp5dazz3lWeffTYYLyoqkjXUeWtmtnr1apmjdp3x7EqjrlVP/9W5ZGb2hz/8IRifMWOGrHHSSSfJnC233FLm1NbW5hQ30+9FPPdJz8956aWXgvHTTjtN1pgyZYrMUdurmuldhbw7/tXX1wd38fLsZvnBBx/IHLX9uWfr5nPOOUfmeM7/0Ov17ja6du1a13kV4tk6+JlnngnGBwwYIGs8+OCDMmfy5Mky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yZylS5cG43fffbes8eabb8ocz97zalZOhw7f+2XsVlhYGIyfcsopssbPfvYzmXP88cfLnNGjR8ucJHTv3j2ROup8ee+992QNT39Hjhwpc0LXoneOUV5eXnA+gOe+0rdvX5nTtWvXYNwzE8Yzq2XGjBkyR80uCd3zY1OzDNRcJjOzM888U+ao+TVmejaGZ15YLLvssksw7plf06NHD5mzMZ0rntk+nvcsime+xpIlS2SO554cmjninfOh7nFJUe+jPfPNNttsM5njubeHZnVtSC82nrMbAAAAwP9qLD4AAAAARMHiAwAAAEAULD4AAAAARMHiAwAAAEAULD4AAAAARMHiAwAAAEAULD4AAAAARLHxTCcTQoNNzMz++Mc/yhrt2rWTOZ6hVjfccIPMUdSwvIULF8oan3/+uczZc889g3HVVzOzE044Qebst99+MkcN/mlubpY16urqggOAVq1aJWt8++23MmfnnXcOxj3DdN544w2Zo4YZmpn169dP5uTK07dOnTrl/HOuueYamaOGeJmZ1dTUyJxbb73VdUy58lxDHueff34wPmHCBFljyy23lDmtra3uY1ofz33UzKypqcmampoyxl999VVZo6GhQeZsscUWwbhnqOiHH34oczyD1mJobGyUOXPnzpU5e+21VzD+0EMPyRqHHXaYzHn99ddljhoa6hm419LSYi0tLTnV8Ojdu3cwnkqlZI158+bJnHHjxrmP6fu2YMECmeMZXqp4BjR6+rv55pvnfCwea9asCQ75LS4uTuTnqKGHs2fPljU8z/ghQ4bInNAgYc+9KY1PPgAAAABEweIDAAAAQBQsPgAAAABEweIDAAAAQBQsPgAAAABEweIDAAAAQBQsPgAAAABEweIDAAAAQBQ5Dxmsr6+3jh075lTjqaeekjlqeNaTTz4pawwbNkzmeIasrF27Nqe4h2fg3sUXXyxz1JDBiy66yH1MIXV1dYnUUYqKiqyoqChjPKkBXGqokmcI5Pbbby9zQq8lSatWrQoOl1u5cqWsccwxx8gcNQxpzJgxssY333wjcwYMGCBz1DXkucY8qqurZc4nn3wic9QQtMWLF7uP6X+CUaNGyZxHHnlE5vTo0SMYf/TRR2UNz2DLWEMG1QBNz/P2qquukjmhYWFmZtOnT5c1PJJ4Hnq0b98+eA15Bvs98cQTMmf16tXB+EsvvSRr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",
      "text/plain": [
       "<Figure size 1000x1000 with 100 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "x_pruduction=pca.transform(example_digits)\n",
    "x_restore=pca.inverse_transform(x_pruduction)\n",
    "plot_digits(x_restore)#清晰了不少"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
